% A,Б,В,Г,Д, К, Н, О, С, Ф, Жаргон, Заряд, Мустанг, Фарт, Ювенал

place(X) :- member(X,[1,2,3,4,5]).

different(A,B,C,D,E) :- not(member(A,[B,C,D,E])),not(member(B,[A,C,D,E])), not(member(C,[A,B,D,E])), not(member(D,[A,B,C,E])), not(member(E,[A,B,C,D])).

printall:- join(A,Б,В,Г,Д,К,Н,О,С,Ф,Жаргон,Заряд,Мустанг,Фарт,Ювенал), write(A),nl,write(Б),nl,write(В),nl,write(Г),nl,write(Д),nl,write(К),nl,write(Н),nl,write(О),nl,write(С),nl,write(Ф),nl,write(Жаргон),nl,write(Заряд),nl,write(Мустанг),nl,write(Фарт),nl,write(Ювенал).

rule1(A,Б,В,Г,Д,К,Н,О,С,Ф,Жаргон,Заряд,Мустанг,Фарт,Ювенал) :- Фарт = К; Фарт = О; Фарт = С.
rule2(A,Б,В,Г,Д,К,Н,О,С,Ф,Жаргон,Заряд,Мустанг,Фарт,Ювенал) :- not(А = 1), not(Ф = 1).
rule3(A,Б,В,Г,Д,К,Н,О,С,Ф,Жаргон,Заряд,Мустанг,Фарт,Ювенал) :- Г < Жаргон, Г > К.
rule4(A,Б,В,Г,Д,К,Н,О,С,Ф,Жаргон,Заряд,Мустанг,Фарт,Ювенал) :- Заряд < Н, Заряд < В, Б < Н, Б < В.
rule5(A,Б,В,Г,Д,К,Н,О,С,Ф,Жаргон,Заряд,Мустанг,Фарт,Ювенал) :- Д is Ф + 1.
rule6(A,Б,В,Г,Д,К,Н,О,С,Ф,Жаргон,Заряд,Мустанг,Фарт,Ювенал) :- Ювенал < О.
rule7(A,Б,В,Г,Д,К,Н,О,С,Ф,Жаргон,Заряд,Мустанг,Фарт,Ювенал) :- Мустанг is 3; Фарт is 3; Ювенал is 3.
rule8(A,Б,В,Г,Д,К,Н,О,С,Ф,Жаргон,Заряд,Мустанг,Фарт,Ювенал) :- С > Г, С < Ф.
rule9(A,Б,В,Г,Д,К,Н,О,С,Ф,Жаргон,Заряд,Мустанг,Фарт,Ювенал) :- not(Д = Жаргон).



printres:- place(A),place(Б),place(В),place(Г),place(Д), different(A,Б,В,Г,Д),
	place(К),place(Н),place(О),place(С),place(Ф),different(К,Н,О,С,Ф),
	rule2(A,Б,В,Г,Д,К,Н,О,С,Ф,Жаргон,Заряд,Мустанг,Фарт,Ювенал),
	rule5(A,Б,В,Г,Д,К,Н,О,С,Ф,Жаргон,Заряд,Мустанг,Фарт,Ювенал),
	rule8(A,Б,В,Г,Д,К,Н,О,С,Ф,Жаргон,Заряд,Мустанг,Фарт,Ювенал), 
	place(Жаргон),place(Заряд),place(Мустанг),place(Фарт),place(Ювенал),different(Жаргон,Заряд,Мустанг,Фарт,Ювенал), 
	rule7(A,Б,В,Г,Д,К,Н,О,С,Ф,Жаргон,Заряд,Мустанг,Фарт,Ювенал),
	rule1(A,Б,В,Г,Д,К,Н,О,С,Ф,Жаргон,Заряд,Мустанг,Фарт,Ювенал),
	rule3(A,Б,В,Г,Д,К,Н,О,С,Ф,Жаргон,Заряд,Мустанг,Фарт,Ювенал),
	%rule4(A,Б,В,Г,Д,К,Н,О,С,Ф,Жаргон,Заряд,Мустанг,Фарт,Ювенал),
	rule6(A,Б,В,Г,Д,К,Н,О,С,Ф,Жаргон,Заряд,Мустанг,Фарт,Ювенал),
	rule9(A,Б,В,Г,Д,К,Н,О,С,Ф,Жаргон,Заряд,Мустанг,Фарт,Ювенал),
	write(A),nl,write(Б),nl,write(В),nl,write(Г),nl,write(Д),nl,write(К),nl,write(Н),nl,write(О),nl,write(С),nl,write(Ф),nl,write(Жаргон),nl,write(Заряд),nl,write(Мустанг),nl,write(Фарт),nl,write(Ювенал).


